package com.sky.vo;
/**
 * 1.当前模块名：sky-pojo
 *   模块作用：存放视图对象(Value Object)，用于Controller层返回给前端的结构化数据
 * 2.当前包名：com.sky.vo
 *   包作用：封装Controller层返回的视图数据模型（Value Object）
 * 3.当前类名：OrderOverViewVO
 *   类作用：订单概览视图对象，展示不同状态订单的数量统计
 */
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;

/**
 * OrderOverViewVO：订单概览视图对象
 * 知识点说明：
 * 1. 状态分组统计：按订单生命周期关键节点分组计数
 * 2. 数据完整性：allOrders字段应等于各状态订单数之和
 * 3. 实时性要求：高频刷新数据需考虑缓存策略
 * 4. 命名一致性：使用Orders后缀明确统计对象
 * 5. 轻量化设计：仅包含核心统计字段（无业务明细）
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class OrderOverViewVO implements Serializable {
    //待接单数量
    private Integer waitingOrders;

    //待派送数量
    private Integer deliveredOrders;

    //已完成数量
    private Integer completedOrders;

    //已取消数量
    private Integer cancelledOrders;

    //全部订单
    private Integer allOrders;
}
